import glob


def merge_jsonl_files(input_pattern, output_file):
    # 获取所有匹配输入模式的JSONL文件
    input_files = sorted(glob.glob(input_pattern))

    # 确保至少找到一个输入文件
    if not input_files:
        raise ValueError("未找到匹配的JSONL文件")

    # 打开输出文件进行写入
    with open(output_file, 'w', encoding='utf-8') as outfile:
        # 遍历每个输入文件
        for filename in input_files:
            # 打开当前输入文件
            with open(filename, 'r', encoding='utf-8') as infile:
                # 逐行读取并写入输出文件
                for line in infile:
                    outfile.write(line.strip() + '\n')  # 处理可能的空白字符


if __name__ == "__main__":
    # 使用示例
    merge_jsonl_files(
        input_pattern='*.jsonl',  # 匹配当前目录下所有.jsonl文件
        output_file='qwen_merged.jsonl'  # 输出文件名
    )